Switching power control modules are found in many applications, including without limitation power supplies and low-power lighting systems. Such switching power control modules are typically designed to generate control signals for operating a power train for transferring electrical energy from an input of the power train to a load coupled to the output of the power train based on one or more physical variables related to the power train or the type of system in which it is utilized.
Algorithms implemented by switching power control modules often require cycle-by-cycle control for controlling one or more switches of a power train, wherein such cycles are defined by frequencies varying from as little as a few kilohertz to as much as a few megahertz. Accordingly, in many instances, to ensure proper operation of the system in which the power train is utilized, the switching power control module must respond to events (e.g., variation in an input signal of the power train or some other electrical characteristic of the power train) within a very short amount of time, oftentimes in as little as nanoseconds, which may impose difficult real-time response requirements. Despite such requirements, it is often desirable that control solutions for switching power control modules be low cost.
Accordingly, traditional switching power control modules are based on algorithms implemented in logic gates, and often lack programmability. To solve for the lack of programmability, suboptimal solutions have been utilized, such as employing off-the-shelf microcontrollers and general purpose peripherals.